package com.smarttest.common.util.protocol.ems;


public interface DspConfig {

	public String getServerid();
	
	/**
	 * 通过felix配置文件获得
	 * @throws Exception 
	 */
	public void initGroupInfo() throws Exception;
	
	/**
	 * 获取diamond配置超时时间
	 * 来自felix配置文件
	 */
	public long getTimeout();
	
	/**
	 * Get diamond groupId
	 * @param groupIdKey 前缀加上groupIdKey得到最终groupId
	 */
	public String getGroupId(String groupIdKey);
	
	/**
	 * 取diamond中config,groupId+dataId唯一确定以条config
	 * 
	 * @param groupIdKey 前缀加上groupIdKey得到最终groupId
	 * @param dataId 可通过文档获得
	 * 
	 */
	public String getConfig(String dataId);
	
	public String getConfig(String groupIdKey, String dataId);
	
	public String getConfig(String groupIdKey, String dataId, String defaultValue);
	
	void addConfigListener(String groupId, String dataId, ConfigListener listener);
	
//	public void setConfigListener(String groupIdKey, String dataId, ManagerListener listener);
	
	public void removeConfigListener(String groupIdKey, String dataId);
}